class Solution {
public:
    string modifyString(string s) {
        if (s.size() == 1)
        {
            s[0] = 'a';
            return s;
        }
        for (int i = 0; i < s.size(); i++)
        {
            if (s[i] == '?')
            {
                if (i == 0)
                {
                    for (char c = 'a'; c <= 'z'; c++)
                    {
                        if (c != s[i + 1])
                            s[i] = c;
                    }
                }
                else if (i == s.size() - 1)
                {
                    for (char c = 'a'; c <= 'z'; c++)
                    {
                        if (c != s[i - 1])
                            s[i] = c;
                    }
                }
                else
                {
                    for (char c = 'a'; c <= 'z'; c++)
                    {
                        if (c != s[i - 1] && c != s[i + 1])
                            s[i] = c;
                    }
                }
            }
        }
        return s;
    }
};